package com.financing.wap.dao;

import java.sql.SQLException;
import java.util.List;
import java.util.Map;

import com.financing.wap.dto.ForegroundProductDTO;
import com.financing.wap.dto.OutProductDTO;

public interface IForegroundProductDao extends IBaseDao<ForegroundProductDTO, Integer> {
	
	/**
	 * 
	
	* @Title: addForegroundProduct
	
	* @Description: 新增个人产品
	
	* @param @param foregroundProductDto
	* @param @return    设定文件
	
	* @return int    返回类型
	
	* @throws
	 */
	public int addForegroundProduct(ForegroundProductDTO foregroundProductDto);
	/**
	 * 
	
	* @Title: addForegroundProductLog
	
	* @Description: 新增个人产品
	
	* @param @param OutProductDTO
	* @param @return    设定文件
	
	* @return int    返回类型
	
	* @throws
	 */
	public int addForegroundProductLog(OutProductDTO outProductDto);
	/**
	 * 
	
	* @Title: updateOutProduct
	
	* @Description:修改个人产品进度
	
	* @param @param foregroundProductDto
	* @param @return    设定文件
	
	* @return int    返回类型
	
	* @throws
	 */
	public int updateOutProduct(OutProductDTO outProductDto);
	
	/**
	 * 
	
	* @Title: updateForegroundProduct
	
	* @Description:修改个人产品
	
	* @param @param foregroundProductDto
	* @param @return    设定文件
	
	* @return int    返回类型
	
	* @throws
	 */
	public int updateForegroundProduct(ForegroundProductDTO foregroundProductDto);
	
	/**
	 * 
	
	* @Title: queryForegroundProduct
	
	* @Description: 查询个人产品
	
	* @param @param foregroundProductDto
	* @param @return    设定文件
	
	* @return ForegroundProductDTO    返回类型
	
	* @throws
	 */
	public List<ForegroundProductDTO> queryForegroundProduct(ForegroundProductDTO foregroundProductDto);
	/**
	 * 
	
	* @Title: countForegroundProduct
	
	* @Description: 查询个人产品总数
	
	* @param @param foregroundProductDto
	* @param @return    设定文件
	
	* @return ForegroundProductDTO    返回类型
	
	* @throws
	 */
	public int countForegroundProduct(ForegroundProductDTO foregroundProductDto);
	
	/**@Title: 修改年化益率 （错误 #1137: 后台-产品结束金额未填写保存显示原募集规模后再次修改募集规模，结束金额仍然显示原来的）
	 * @param map
	 * @return
	 * @throws SQLException
	 */
	public int updateProjectAnnualRevenueByendAmount(Map<String, Object> map) throws SQLException;

	
}
